package planes
import comunicaciones.Comunicacion
import cliente.empresa.Cliente

//Numeros amigos, se pueden elegir hasta 5 numeros libres, a los que se puede llamar en forma gratuita (pueden ser locales o larga distancia).
class PlanNumAmigos extends Plan{
  var numeros: List[Int] = List()
  

  def addNumero( unNum:Int){
    if(this.numeros.length <5){
      this.numeros = unNum :: this.numeros
    }
    else{
      throw new RuntimeException(" Ya se eligieron los 5 numeros ")
    }
  }
  
  def calcularPrecioSegunPlan(llamada :Comunicacion): Double ={
	  	llamada.precioParaConPlanAmigos(this.numeros)
  }
  
  override def checkearPrecioParaPlan(client: Cliente) :(String,Double) ={
      client.plan = this
      var total = 0.0
      for(llamada <- client.comunicaciones){
        total += llamada.precio(client)
      }
      return ("Plan NumerosAmigos",total)
  }

}